
export interface DefaultLiveM3u8Data {
    data: LiveM3u8Data
}

export interface DafaultLiveMsg {
    data: {
        admin: Array<LiveMsg>
        room: Array<LiveMsg>
    }
}

export interface LiveM3u8Data {
    all_special_types: Array<[]>
    encrypted: boolean
    hidden_till: number
    is_hidden: boolean
    is_locked: boolean
    is_portrait: boolean
    live_status: number
    live_time: number
    lock_till: number
    playurl_info: { conf_json: string, playurl: PlayUrlInfo }
    pwd_verified: boolean
    room_id: number
    room_shield: number
    short_id: number
    uid: number
}

export interface PlayUrlInfo {

    stream: [{}, {
        format: [{}, {
            codec: [Codec]
            format_name: string
        }]
        protocol_name: string
    }]

}

export interface Codec {
    base_url: string
    url_info: [{
        extra: string
        host: string
        stream_ttl: number
    }, {}]
}

export interface DefaultKvlist {
    data: {
        kv_list: Array<Kvlist>
    }
}

export interface Kvlist {
    hash: string
    key: string
    value: string
}

export interface LiveMsg {
    emoticon: Emoticon
    nickname: string
    text: string
    uid: number
    uname_color: string
}

export interface Emoticon {
    bulge_display: string
    emoticon_unique: string
    height: number
    id: string
    in_player_area: number
    is_dynamic: string
    perm: number
    text: string
    url: string
    width: number
}

export interface GiftData {
    data: {
        list: Array<GifDataList>
    }
}

export interface GifDataList {
    animation_frame_num: number
    bag_gift: number
    bind_roomid: number
    bind_ruid: number
    broadcast: number
    bullet_head: string
    bullet_tail: string
    coin_type: "gold"
    combo_resources_id: number
    corner_background: string
    corner_mark: "上新"
    desc: "小乖乖～"
    diy_count_map: 1
    draw: 0
    effect: 2
    effect_id: 739
    first_tips: string
    frame_animation: string
    full_sc_horizontal: string
    full_sc_horizontal_svga: string
    full_sc_vertical: string
    full_sc_vertical_svga: string
    full_sc_web: string
    gif: string
    gift_attrs: [number]
    gift_banner: null
    gift_type: number
    goods_id: number
    has_imaged_gift: number
    id: number
    img_basic: string
    img_dynamic: string
    left_corner_background: string
    left_corner_text: string
    limit_interval: number
    max_send_limit: number
    name: string
    price: number
    privilege_required: number
    rights: string
    rule: string
    stay_time: number
    type: number
    webp: string
    weight: number
}

export interface RoomgiftListGoldList {
    data: {
        room_gift_list: {
            gold_list: Array<GoldList>
        }
    }
}

export interface GoldList {
    img_basic: string
    name: string
    id: number
}

export interface RechargeData {
    data: {
        goods: Array<RechargGoods>
    }
}

export interface RechargGoods {
    flag: number
    id: number
    index: number
    name: string
    pay_price: number
    price: number
    product_id: string
}